package com.tiancheng.trade.settlement.vo.settlement.admin;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.tiancheng.trade.settlement.vo.BasePage;
import lombok.Data;

import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import java.time.LocalDate;

/**
 * 交易资金对账汇总表单条记录查询Vo
 */
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class SettleQueryVo extends BasePage {

    /**
     * 实际清算日期
     */
    @NotNull(message = "实际清算日期不能为空")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @JsonProperty("actual_clear_date")
    private LocalDate actualClearDate;

    /**
     * 中台商户编码
     *
     */
    @NotEmpty(message = "商户不能为空")
    @JsonProperty("merchant_code")
    private String merchantCode;

    /**
     * 交易渠道
     *
     */
    @JsonProperty("pay_channel")
    @NotEmpty(message = "交易渠道不能为空")
    private String payChannel;
}
